#ifndef _QUEUE_H_
#define _QUEUE_H_
#include<stddef.h>

#ifdef __cplusplus
extern "C" {
#endif

typedef enum{
	QUEUE_OK,   
 	QUEUE_MEM_ERR,
	QUEUE_FULL,
	QUEUE_EMPTY
}queue_status_t;

typedef struct queue_t queue_t;

queue_status_t queue_create(queue_t **queue,size_t size); queue_status_t queue_put(queue_t *this,char c); queue_status_t queue_get(queue_t *this,char *c);
int queue_is_empty(queue_t *this);
int queue_is_full(queue_t *this);
void queue_destroy(queue_t *this);

#ifdef __cplusplus
}
#endif
#endif  // _QUEUE_H_
